
package Controllers;

import Persistence.Annuncio;
import Persistence.SitoAcquisti;
import SBforEntityClasses.AnnuncioFacade;
import SBforEntityClasses.AnnuncioFacadeLocal;
import java.net.URL;
import java.util.Date;
import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;


/**
 *
 * @author Ale
 */
@Stateless
public class GestoreAnnunci implements GestoreAnnunciLocal {
    @EJB
    private AnnuncioFacadeLocal annuncioFacade;

    @Override
    public List<Annuncio> trovaAnnunciInRegione(String regione) {
        return null;
    }

    // Add business logic below. (Right-click in editor and choose
    // "Insert Code > Add Business Method")

    @Override
    public boolean inserisciAnnuncio(URL sito, Date chiusura, Date ordine, double spedizione, boolean gratuita, double minimaGratuita, double spesaIniziale){
        
        Annuncio annuncio = new Annuncio();
        annuncio.setDataChiusura(chiusura);
        annuncio.setDataOrdine(ordine);
        annuncio.setPrezzoRaggiunto(spesaIniziale);
        //Query q = em.createQuery("SELECT x FROM SitoAcquisti x WHERE x.URL = ?1");
        //q.setParameter(1, sito);        
        //SitoAcquisti sitoAcquisti = (SitoAcquisti) q.getResultList().get(0);
        SitoAcquisti sitoAcquisti = new SitoAcquisti();
        sitoAcquisti.setUrl(sito);
        annuncio.setSito(sitoAcquisti);
        annuncio.setIndirizzoRitiro(null);
        annuncioFacade.create(annuncio);
        return true;
        
    }
    
   /*     @Override
    public List<Annuncio> trovaInRegione(String regione) {
        //EntityManager em = emf.createEntityManager();
        Query q = em.createQuery ("SELECT x FROM Annuncio x WHERE x.indirizzoRitiro.regione = ?1");
        q.setParameter(1, regione);
        em.close();
        return q.getResultList ();
    }*/


    
   
    
  /*  @Override
    public int numeroAnnunci(){
        //EntityManager em = emf.createEntityManager();
        Query q = em.createQuery("SELECT x FROM SitoAcquisti x");
        em.close();
        return q.getResultList().size();
    }


   */

    @Override
    public void inserisciAnnuncio() {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    
}
